System and Method to Improve the Efficiency of Synchronous Mirror Delays and Delay Locked Loops

ABSTRACT

A phase detection system for use with a synchronous mirror delay or a delay-locked loop in order to reduce the number of delay stages required, and therefore increase the efficiency, is disclosed. The invention includes taking a clock input signal and a clock delay or feedback signal, each having timing characteristics, and differentiating between four conditions based upon the timing characteristics of the signals. The phase detector and associated circuitry then determines, based upon the timing characteristics of the signals, which of a number of phase conditions the signals are in. Selectors select the signals to be introduced into the synchronous mirror delay or delay-locked loop by the timing characteristics of the phase conditions. The system is able to utilize the falling clock edge of the clock input signal, and the lock time is decreased under specific phase conditions. The invention increases the efficiency of the circuits by reducing the effective delay stages in the SMD or DLL while maintaining the operating range.

CROSS REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No. 10/932,942, filed Sep. 2, 2004, which is a division of U.S. patent application Ser. No. 09/921,614, filed Aug. 3, 2001, now U.S. Pat. No. 6,798,259, which is incorporated herein by reference in its entirety.

BACKGROUND OF THE INVENTION

The present invention relates generally to the field of integrated circuits. More particularly, the invention relates to circuits that will synchronize the internal timing or clock signals within an integrated circuit such as a synchronous dynamic random access memory (SDRAM) to external timing or clock signals.

Most digital logic implemented on integrated circuits is clocked synchronous sequential logic. In electronic devices such as synchronous dynamic random access memory circuits (SDRAMs), microprocessors, digital signal processors, and so forth, the processing, storage, and retrieval of information is coordinated with a clock signal. The speed and stability of the clock signal determines to a large extent the data rate at which a circuit can function. Many high-speed integrated circuit devices, such as SDRAMs, microprocessors, etc., rely upon clock signals to control the flow of commands, data, addresses, etc., into, through and out of the devices.

A continual demand exists for devices with higher data rates; consequently, circuit designers have begun to focus on ways to increase the frequency of the clock signal. In SDRAMs, it is desirable to have the data output from the memory synchronized with the system clock that also serves the microprocessor. The delay between a rising edge of the system clock (external to the SDRAM) and the appearance of valid data at the output of the memory circuit is known as the clock access time of the memory. A goal of memory circuit designers is to minimize clock access time as well as to increase clock frequency.

One of the obstacles to reducing clock access time has been clock skew, that is, the delay time between the externally supplied system clock signal and the signal that is routed to the memory's output circuitry. An external system clock is generally received with an input buffer and then further shaped and redriven to the internal circuitry by an internal buffer. The time delay of the input buffer and the internal buffer will skew the internal clock from the external clock. This clock skew will cause signals that are to be transferred from the integrated circuit to be out of synchronization with the external system clock. This skew in the clock signal internal to the integrated circuit is furthered by the delays incurred in the signal passing through the clock input buffer and driver and through any associated resistive-capacitive circuit elements. One solution to the problem of clock skew is the use of a synchronous mirror delay, and another is the use of delay-locked loops.

Delay-locked loops (DLL) are feedback circuits used for synchronizing an external clock and an internal clock with each other. Typically, a DLL operates to feed back a phase difference-related signal to control a delay line, until the timing of one clock signal is advanced or delayed until its rising edge is coincident with the rising edge of a second clock signal.

A synchronous mirror delay circuit (SMD) is a circuit for synchronizing an external clock and an internal clock with each other. The SMD can acquire lock generally within two clock cycles. The SMD has a period of delay, known as a delay range. The delay range of the SMD determines the actual operating range, or clock frequency, within which the integrated circuits (ICs) can operate. In other words, it is desired to reduce the number of delay stages required in the SMD while maintaining the lock delay range. One goal is to improve the efficiency of the SMD to maintain the proper operating range and to reduce the required area and power consumption of the SMD.

For the conventional SMD implementations, two delay lines are required, one for delay measurement, one for variable mirrored delay. The effective delay length for both delay lines is defined as:

t _(delay) =t _(ck) −t _(mdl)

where t_(ck) is the clock period, t_(mdl) is the delay of an input/output (“I/O”) model, including clock input buffer, receiver, clock tree and driver logic. The delay stages required for each delay line is given by:

$N = {\frac{t_{delay}}{t_{d}} = \frac{t_{ck} - t_{mdl}}{t_{d}}}$

where t_(d) is the delay per stage. The worst case number is given by:

$N_{worst} = \frac{{t_{ck}({long})} - {t_{mdl}({fast})}}{t_{d}({fast})}$

For example, where t_(ck)(long)=15 ns (as in a 66 MHz bus), t_(mdl)(fast)=1 ns and t_(d)(fast)=110 ps,

$N_{worst} = {\frac{{15\mspace{14mu} {ns}} - {1\mspace{14mu} {ns}}}{110\mspace{14mu} {ps}} \approx 128}$

For two delay lines in an SMD, a total of 256 stages are needed to adjust the delay.

When locking, t_(lock)=d_(in)+t_(mdl)+(t_(ck)−t_(mdl)) (measured)+(t_(ck)−t_(mdl)) (variable)+d_(out). This is the conventional equation to calculate the lock time of the SMD, which is generally two clock cycles, based on sampling from one rising edge to the next rising edge of the internal clock signal.

Therefore, one goal of the present invention is to reduce the effective delay stages used in the SMD while maintaining the lock range.

SUMMARY OF THE INVENTION

The present invention solves the aforementioned problems, and improves the efficiency of the synchronous circuitry for the internal clock signal to lock with the external clock signal.

In one aspect of the invention, a phase detection and selection circuit includes a phase detector for receiving a clock input signal CIN and a clock delay signal CDLY. Each signal has timing conditions and generates a plurality of output signal combinations, each combination corresponding to pre-defined phases of the signals based upon the timing characteristics. Logic is associated with the phase detector to select one of the output signal combinations corresponding to the timing conditions of the signals. The timing characteristics define a period of CIN as t_(ck) and also define a period from a rising edge in CIN to a rising edge in CDLY as t_(mdl), and wherein when t_(mdl)>t_(ck)/2, CIN is input into the SMD, and when t_(mdl)<t_(ck)/2, an inverted clock signal CIN′ is input into the SMD to reduce the number of delay stages in the SMD.

In another aspect of the invention, a method of improving the efficiency of a synchronous mirror delay circuit comprises the steps of providing a clock input signal CIN, an inverted clock signal (CIN′) and a clock delay signal CDLY, each having timed characteristics. The method includes interposing a phase detector and selection system between an external clock signal and a synchronous mirror delay circuit, and determining which of a number of phases the signals are in based on the timing characteristics, and directing the signals based upon the phase of the signals.

In another aspect of the invention, a phase detection and selection circuit for a delay-locked loop (DLL) includes a phase detector for receiving a clock input signal CIN and a clock feedback signal CKFB. Each signal has timing conditions and generates a plurality of output signal combinations, each combination corresponding to pre-defined phases of the signals based upon the timing characteristics. Logic is associated with the phase detector to select one of the output signal combinations corresponding to the timing conditions of the signals. The timing characteristics define a period of CIN as t_(ck) and also define a period from a rising edge in CIN to a rising edge in CKFB as t_(e), and wherein when t_(e)<t_(ck)/2, the effective delay of the DLL is less than t_(ck)/2.

BRIEF DESCRIPTION OF THE DRAWINGS

The drawings illustrate the best mode presently contemplated for carrying out the invention.

In the drawings:

FIG. 1 is a block diagram of a synchronous mirror delay with phase detection in accordance with the present invention.

FIG. 2 is a circuit diagram illustrating the phase detector in accordance with one aspect of the present invention.

FIG. 3 is a signal timing diagram showing the timing of a clock input signal and a clock delay signal in accordance with one aspect of the present invention.

FIG. 4 is a signal timing diagram showing the timing of a clock input signal and a clock delay signal in accordance with one aspect of the present invention.

FIG. 4 a is a signal timing diagram showing the timing of a clock input signal and a clock delay signal under lock conditions in accordance with one aspect of the present invention.

FIG. 5 is a chart illustrating the logic combinations of the signals in FIG. 2 based upon the timing characteristics of FIGS. 3 and 4.

FIG. 6 is a flowchart illustrating a method in accordance with one aspect of the present invention.

FIG. 7 is a block diagram of a delay-locked loop with phase detection in accordance with the present invention.

FIG. 8 is a signal timing diagram showing the timing of a clock input signal and a clock feedback signal in accordance with one aspect of the present invention.

FIG. 9 is a signal timing diagram showing the timing of a clock input signal and a clock feedback signal in accordance with one aspect of the present invention.

FIG. 10 is a block diagram illustrating a system in which the present invention may be used.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

Referring now to FIG. 1, a system in accordance with the present invention is shown generally by the numeral 10. The system 10 includes a synchronous mirror delay (SMD) circuit 12 and a phase detector control block 14. An external clock signal 16 is input into receiver and buffer 18. This produces clock input signal 20 (CIN), inverted clock input signal (CIN′) 21 and clock delay signal 22 (CDLY). Clock delay signal 22 is delayed by an I/O system delay t_(mdl) illustrated by block 24. CDLY 22 is also directly fed via line 23 into the SMD 12.

Phase detector control block 14 includes phase detector 26 and associated logical circuitry. The goal of the present invention is to take clock input signal 20 and clock delay signal 22 and, by defining certain characteristics and relationships about the timing of the signals, delineate specific conditions under which the circuit is operating, and direct the signal accordingly. Ultimately, the phase of the signals will determine whether CIN 20 or CIN′ 21 is used as the input to the SMD, or whether the SMD is bypassed altogether. Although a specific logic arrangement is shown, it is contemplated that any suitable control logic may be used to define the conditions of the signals and select them accordingly. Associated with the phase detector is a multiplexor 28 which is used as an input selection multiplexor, that is to determine which selection input (CIN or CIN′), based on the difference between CIN signal 20 and CDLY signal 22, to send to the SMD 12. The outputs (collectively 32) of phase detector 26, which will be described in further detail with respect to FIG. 2 are fed into circuitry control block 30. Circuitry block 30 may be, for instance, a decoder, although any suitable logic is contemplated. The outputs 38 and 40 of phase detection circuitry block 30 will be used to select the outputs for multiplexors 28 and 46, respectively. Based on the signal 38 from control circuitry block 30, input multiplexor 28 will select either CIN 20 or CIN′ 21 to be placed on line 48. The output multiplexor 46 is used in combination with the control circuitry block 30 to select which signal is to be put on output line 50. Line 48 (either CIN signal 20 or CIN′ signal 21) is directed into the SMD 12. Line 48 is also directed via connection 34 to an input of output selection multiplexor 46. As is known in the art, the SMD 12 includes a measurement delay line composed of a plurality of serially cascaded delay elements (not shown), the measurement delay line having a measurement delay line input and a measurement delay line output. Each delay stage is a delay element with control gates. An output of the measurement delay line is used as the input to a variable delay line. The variable delay line is also a plurality of serially connected delay elements (not shown), the variable delay line having a variable delay line input and a variable delay line output. The output of the variable delay line of the SMD 12 is output signal SMDOUT 44. Output signal SMDOUT 44 is used as the input to output multiplexor 46. In some circumstances, it is desired to entirely bypass SMD 12, and in such a case, control circuitry block 30 will send a control signal 40 selecting line 34 rather than SMDOUT 44 as the output 50 of output selection multiplexor 46. As a result, line 48 (either CIN signal 20 or CIN′signal 21) will be used as the input for output selection multiplexor 46. In other cases, the control circuitry block 30 will send a control signal 40 selecting signal SMDOUT 44 from SMD 12. Having selected one of the signals 34 or signal SMDOUT 44, output signal 50 is used as the input to clock tree 54. As is known, a clock tree is a circuit used for distributing a local clock signal. A clock tree may include an internal buffer in order to amplify, buffer and delay the signal in order to form internal clock signal CLKIN 56. Although not shown, it is contemplated that an inverter may be placed before the clock tree 54 in order to invert the clock signal if desired. In this manner, internal clock signal CLKIN 56 will be matched to the external clock 16.

Referring now to FIG. 2, phase detector 26 is described in more detail. Phase detector 26 receives clock input signal 20 and clock delay signal 22. Clock delay signal 22 is used as clock inputs 58 and 60 into registers 64 and 62 respectively. Although D flip-flops are used as registers 62 and 64, it is contemplated that any suitable logic device suitable for the application may be employed. Signal 22 is input into the clock inputs for the D flip-flops. Clock input signal CIN 20 is input as the D inputs 66 and 68 of flip-flops 62 and 64, respectively. Input 68 is delayed from clock input signal 20 by t_(d) 70, which is representative of the delay per stage, and therefore there is a delay between input signals 66 and 68, by a period t_(d) 70. Each flip-flop 62 and 64 respectively outputs a signal 34 and 32. The logical level, i.e., a logical 1 or a logical 0, of signal branches 32 and 34 determine the condition under which the relationship of the CIN signal 20 and CDLY signal 22 are operating in. The signal conditions are based on their individual timing characteristics.

Referring now to FIG. 3, a clock diagram is shown illustrating one possible combination of timing characteristics of CIN signal 20 and CDLY signal 22. CIN signal 20 fires first, and the characteristic t_(mdl), which is the delay of the IO model, is measured from the rising edge 23A to the rising edge 25A of CDLY signal 22. The entire period of CIN signal 20, that is the measurement of rising edge 23A to the next rising edge 23B is defined as the clock period or t_(ck). Therefore, the time defined from the rising edge 25A of CDLY signal 22 to the next rising edge 23B of the CIN signal 20 defines a delay, t_(delay) 27A, which may be defined by t_(ck) minus t_(mdl). This series of timing characteristics would occur when CDLY signal 22 fires after the first falling edge 29A of CIN signal 20. This sampling of CIN from rising edge to rising edge requires a given number of delay stages to accomplish, where the total delay of these delay stages is t_(delay), which is less than half of t_(ck).

Referring now to FIG. 4, an alternate timing diagram is shown for CIN signal 20 and CDLY signal 22. These timing characteristics would occur when the rising edge 25B of CDLY signal 22 occurred prior to the falling edge 29B of CIN signal 20. Again, the delay between the firing at the rising edge 23B of CIN signal 20 and rising edge 25B defines the period of delay for the I/O model t_(mdl). Because the period of time from rising edge 23B to falling edge 29B represents half of the clock period t_(ck), that portion of the signal may be represented by t_(ck)/2. Therefore, that distance minus the delay period for the I/O model t_(mdl) results in the delay period 27B, in this case defined as t_(ck)/2 minus t_(mdl). Therefore, if the phase detector analyzes when the rising edge of CDLY signal 22 occurs with respect to the falling edge of CIN signal 20, a distinction can be made with respect to the timing characteristics of the individual signals 20 and 22. Since the total delay required from the SMD for synchronization is reduced from (t_(ck) minus t_(mdl)) to (t_(ck)/2 minus t_(mdl)) where t_(mdl) is less than t_(ck)/2, more than half of the delay stages can be saved with this invention. The present invention takes advantage of the ability to sample from a rising edge 23 b to falling edge 29 b, resulting in fewer delay stages in the SMD to accomplish.

Referring now to FIG. 4 a, the timing diagram is shown illustrating the lock conditions. CIN signal is shown as well as CIN plus t_(d), where t_(d) represents the delay between the two signals. In lock condition 3, signal CDLY is shown rising between the rising of CIN and CIN plus t_(d), and falling between the falling of CIN and CIN plus t_(d), respectively. Under this circumstance, a lock condition exists and the synchronous mirror delay is bypassed. Under lock condition 4, CDLY signal rises between the falling edge of CIN and the falling edge of CIN plus t_(d). And CDLY falls between the rising edge of CIN and the rising edge of CIN plus t_(d). Again, a lock condition exists and again the synchronous mirror delay is bypassed.

Referring now to FIG. 5, the four possible combinations of the logical levels of PH1 signal 32 and PH2 signal 34 are illustrated. Based on the logical levels of each of these signals, such that the condition of the signals may be determined from the logic levels on these lines.

t _(mdl) >t _(ck)/2  Condition (1)

For condition (1), the effective delay length in the SMD is equal to t_(ck)−t_(mdl). When locking, t_(lock)=d_(in)+t_(mdl)+(t_(ck)−t_(mdl)) (measured)+(t_(ck)−t_(mdl)) (variable)+d_(out)=2t_(ck)+d_(in)+d_(out)−t_(mdl)≈2t_(ck), where d_(in) and d_(out) are I/O intrinsic delays on which t_(mdl) is represented or modeled.

This is the conventional equation to calculate the lock time of the SMD, which is two clock cycles.

t _(mdl) <t _(ck)/2  Condition (2)

Under this condition, a multiplexor is used to select a different phase of CIN to feed in the SMD and the effective delay length is equal to t_(ck)/2−t_(mdl).

Again, t_(lock)=d_(in)+t_(mdl)+(t_(ck)/2−t_(mdl))+(t_(ck)/2−t_(mdl))+d_(out)=t_(ck)+d_(in)+d_(out)−t_(mdl)≈t_(ck).

The lock time is decreased to only one clock cycle. From the previous example,

$N_{worst} = {\frac{{15\mspace{14mu} {{ns}/2}} - {1\mspace{14mu} {ns}}}{110\mspace{14mu} {ps}} = {59\mspace{14mu} {stages}}}$

compared to 128 stages without the invention.

Condition (3):

When t_(mdl)=t_(ck), the phase detector would declare a lock condition and the clock signal CIN is output directly without even passing into the SMD. The SMD may be disabled to save power.

Condition (4):

When t_(mdl)=t_(ck)/2, the CIN is inverted and the SMD may be disabled to save power.

It is contemplated that the present invention will reduce the effective delay elements used in the SMD, as a function of the signals being found under the condition 2, saving both silicon area and power in the memory device, which is the primary goal.

For conditions (2) and (4), if there is a severe duty cycle distortion, the falling edges of CIN cannot provide a correct reference to adjust the delay, which would result in a large skew (phase error) at the output.

Referring now to FIG. 6, a flowchart illustrating a methodology associated with the present invention is disclosed. At the start 70, the present invention is used for those circuits in which it is desired to reduce the number of delay stages and there is negligible duty-cycle distortion. Therefore, signal CIN, inverted CIN and CDLY are provided in step 72. CDLY is delayed by the delay of the I/O system. In step 74, a phase detector is interposed between the synchronous mirror delay and CIN and CDLY signals. Both CIN and CDLY are input into the phase detector 76, after which it is necessary to determine based on the timing characteristics and relationships of CIN to CDLY, which condition or phase the timing signals are in 78. This leads to a series of four decisions 80 a through 80 d used to determine the relationship of the particular timing characteristics t_(mdl) versus t_(ck). Although the series of decisions are shown made in a serial fashion, that is, 80 a prior to 80 b and so on, these operations could also be rearranged to run in other serial fashions or in parallel, so long as the determinations are made. In decision 80 a, it is determined whether t_(mdl) is greater than t_(ck)/2 but less than t_(ck). If so, 82 a condition 1 is triggered 84 a in which the lock time is equal to two clock cycles, which is the conventional synchronous mirror delay lock time. In a conventional manner, CIN is then fed into the synchronous mirror delay. The SMDOUT signal is input into the clock tree. If condition 1 is not satisfied 81, it is determined whether t_(mdl) is less than t_(ck)/2 in decision 80 b. If so 82 b, condition 2 is implicated in which the lock time is equal to approximately one clock cycle, or approximately half of the conventional synchronous mirror delay lock time. CIN is then inverted and fed into the synchronous mirror delay. The SMDOUT signal is input into the clock tree. If condition 2 is not satisfied 83, it is determined whether t_(mdl) is equal to t_(ck) in decision 80 c. If so 82 c, condition 3 84 c is implicated, and lock has already occurred so a lock is declared and the synchronous mirror delay is bypassed. The CIN signal is input directly into the clock tree for internal production of the clock. If none of these conditions are true 85 and decision 80 d is determined whether t_(mdl) is equal to t_(ck)/2. If so 82 d, condition 4 84 d is implicated and it is merely necessary to invert the CIN signal or use an inverted CIN to be input into the clock tree. Again, since there is no need to further delay, the synchronous mirror delay is bypassed and, in a preferred embodiment may be disabled in order to save power. The CIN′ signal is input into the clock tree again to distribute the internal clock signal. The result of all four conditions 84 a-d is that lock 86 occurs with an overall reduction in delay stages, which is the purpose of the circuit while maintaining the desired operating range.

Referring now to FIG. 7, the present invention is shown being used in a delay-locked loop or DLL, which is shown generally by the numeral 200. An external clock signal 216 is input into receiver and buffer 218. This produces clock input signal (CIN) 220. The delay in the signal as it passes through buffer receiver 218 is represented by d_(in) 219. CIN signal 220 is input via branch 222 into phase detector 226. CIN signal 220 is also directed via branch 224 into delay line 228. Phase detector 226 may include any associated logical circuitry. The goal of the present invention is to take CIN signal 220 as well as a clock feedback signal 230 (CKFB) and, by defining particular characteristics and relationships about the timing of CIN signal 220 and CKFB 230, to delineate specific conditions under which the signals are operating, and selecting and directing the signals accordingly. Although a specific logic arrangement is shown, it is contemplated that any suitable control logic may be used to define the conditions of the signals and then selecting them accordingly. CKFB feedback signal 230 is a typical feedback loop as is found in a common delayed-lock loop (DLL). Phase detector 226 compares the timing of signal CIN and signal CKFB. Based on timing conditions and characteristics of each signal, control signals are sent via control lines 232 to control block 234 and output via lines 236 to delay line 228. The period of the delay is represented by t_(delay) 230. Associated with the delay line 228 is selector 238 which receives an input 240 from the phase detector 226 as well as inputs 242 and 244 representative of the clock CLK and inverted clock signals respectively. Selector 238 selects, based on the input 240 from the phase detector 226, whether to put signal 242 or 244 to input 246 into clock tree driver 248. The period of delay by the driver is represented by t_(tree) 250. The output 252 of the clock tree driver 248 is sent to an output buffer 254 which has an input data line 256 and a data output line 258. The delay by the output of data is represented by the parameter d_(out) 260. Clock tree driver 248, as part of the delay-locked loop, feeds back into phase detector 226 via line 230. The delay associated with the I/O model 262 is represented by the parameter d_(in) and d_(out).

Generally speaking,

1. In order to synchronize XCLK with DQs,

t _(delay) =t _(ck) −t _(tree)−(d _(in) +d _(out))

-   -   In traditional DLLs, the delay stages required are:

$N = {\frac{t_{delay}}{t_{d}}\mspace{25mu} = \frac{t_{{ck}\;} - t_{tree} - \left( {d_{in} + d_{out}} \right)}{t_{d}}}$ $N_{worst} = {\frac{{t_{ck}({long})} - {t_{tree}({short})} - {\left( {d_{in} + d_{out}} \right)({fast})}}{t_{d}({fast})}\mspace{65mu} = {\frac{{15\mspace{14mu} {ns}} - {1\mspace{14mu} {ns}}}{110\mspace{14mu} {ps}} \approx 128}}$

2. Use same method, and adding a selector:

t _(e) <t _(ck)/2, t _(delay) =t _(ck)/2−t _(e)

t _(e) >t _(ck)/2, t _(delay) =t _(ck) −t _(e)

-   -   For both cases,     -   t_(delay) is less than or equal to t_(ck)/2

$N_{worst} = {\frac{{{t_{ck}/2}({long})} - {others}}{t_{d}({fast})} = {\frac{{7.5\mspace{14mu} n} - {1\mspace{14mu} n}}{110\mspace{14mu} {ps}} \approx 59}}$

Referring now to FIG. 8, a timing diagram for signals CIN and CKFB are shown in a particular arrangement. The period from the rising edge 300 to rising edge 302 is designated as t_(ck). The amount of time from rising edge 300 of CIN and rising edge 304 of CKFB is represented by the parameter t_(e). Additionally, the parameter from the rising edge 304 of CKFB and the falling edge 306 of CIN is represented by the parameter t_(delay). In this case, t_(delay) is less than or equal to half of t_(ck).

Referring now to FIG. 9, the second case is illustrated where CKFB does not fire until after the first pulse of CIN. Again, t_(ck) is represented by the rising edge 308 of CIN and the next rising edge 310 of CIN. Additionally, the length of time from the rising edge 308 to the rising edge 312 of CKFB is shown by the parameter t_(e). However, in this instance, t_(delay) is measured from the rising edge 312 of CKFB until the next rising edge 310 of CIN. Similarly, in this case, t_(delay) is less than or equal to one-half of the clock period t_(ck).

FIG. 10 is a block diagram of a computer system 100. The computer system 100 utilizes a memory controller 102 in communication with SDRAMs 104 through a bus 105. The memory controller 102 is also in communication with a processor 106 through a bus 107. The processor 106 can perform a plurality of functions based on information and data stored in the SDRAMs 104. One or more input devices 108, such as a keypad or a mouse, are connected to the processor 106 to allow an operator to manually input data, instructions, etc. One or more output devices 110 are provided to display or otherwise output data generated by the processor 106. Examples of output devices include printers and video display units. One or more data storage devices 112 may be coupled to the processor 106 to store data on, or retrieve information from, external storage media. Examples of storage devices 112 and storage media include drives that accept hard and floppy disks, tape cassettes, and CD read only memories.

While the present invention has been described in conjunction with preferred embodiments thereof, many modifications and variations will be apparent to those of ordinary skill in the art. For example, although the present invention is directed to synchronous mirror delay systems, the present invention is contemplated to be used with any implementable logic devices and in other arrangements, such as in a digital delay locked loop (DDLL), to improve the efficiency in that arrangement. The foregoing description and the following claims are intended to cover all such modifications and variations. 

1. A method of improving efficiency of a delay-locked loop (DLL), comprising: interposing a phase detector and selection system between an external clock signal and a clock tree driver (CTD); wherein the selection system is interposed between the clock tree driver (CTD) and a delay line, the phase detector comprising a pair of registers, the registers receiving a clock input signal (CIN), and clock feedback signal (CKFB), each signal having timing characteristics, and outputting a pair of logical levels from the registers, the logical levels defining four or more timing conditions corresponding to pre-defined phases of the signals and based upon the timing characteristics; selecting a clock tree driver input directly from the selection system based on a delay line output and one of four or more timing conditions of the phase detector; and selectively directing the signals based upon the pre-defined phases of the signals.
 2. The method of claim 1, wherein selectively directing comprises selectively directing a clock signal (CLK) or inverted clock signal (CLK′) to the clock tree driver (CTD) based upon the phases of CIN and CKFB.
 3. The method of claim 1, wherein characteristics of the signals define a period of CIN as t_(ck) and a period from a rising edge in CIN to a rising edge in CKFB as t_(e), and determining comprises: determining a first timing condition when t_(e)>t_(ck)/2; determining a second timing condition when t_(e)<t_(ck)/2; determining a third timing condition when t_(e)=t_(ck); and determining a fourth timing condition when t_(e)=t_(ck)/2.
 4. The method of claim 1, wherein the phase detector and selection system include only a single phase detector, the delay line and a multiplexor, wherein the delay line is coupled in between the phase detector and the multiplexor and the multiplexor is coupled to the CTD.
 5. A method of reducing a number of effective delay stages in a delay-locked loop (DLL), comprising: differentiating, with a phase detector, four or more timing conditions, the phase detector comprising a pair of registers, the registers receiving a clock input signal (CIN) and a clock feedback signal (CKFB), each signal having timing characteristics, and outputting a pair of logical levels from the registers, the logical levels defining the four or more timing conditions corresponding to pre-defined phases of the signals based upon the timing characteristics; and selecting a delay line output based on one of the four or more timing conditions, the delay line output is selected from one of a clock signal (CLK) or inverted clock signal (CLK′) to be input into a clock tree driver (CTD) directly from an input selection multiplexor, thereby reducing a number of effective delay stages in the DLL; wherein the input selection multiplexor is interposed between the CTD and the delay line.
 6. A method of improving efficiency of a delay-locked loop (DLL), comprising: detecting by way of only a single phase detector four or more timing conditions, the phase detector comprising a pair of registers, the registers receiving a clock input signal (CIN) and a clock feedback signal (CKFB), each signal having timing characteristics, and outputting a pair of logical levels defining the four or more timing conditions corresponding to pre-defined phases of the signals based upon the timing characteristics; and selectively inputting a clock signal (CLK) or inverted clock signal (CLK′) into a clock tree driver (CTD) directly from an input selection multiplexor based on the detected four or more timing conditions to reduce a number of effective delay stages in the DLL, wherein a delay line is interposed between the phase detector and the input selection multiplexor, and the input selection multiplexor is interposed between the CTD and the delay line.
 7. A memory device, comprising: a delay-locked loop (DLL), comprising: a phase detection system comprising a phase detector and an input selection multiplexor, the phase detector to receive a clock input signal (CIN) and a clock feedback signal (CKFB), each signal comprising timing characteristics, the phase detector comprising a pair of registers, the registers to output a pair of branches each comprising a logical level, wherein the logical levels of the branches define four or more timing conditions corresponding to pre-defined phases of CIN and CKFB signals based on the timing characteristics, and wherein a clock signal (CLK) or inverted clock signal (CLK′) is output from a delay line directly via the input selection multiplexor into a clock tree driver (CTD) based on the four or more timing conditions to reduce a number of effective delay stages in the DLL; wherein the input selection multiplexor is interposed between the CTD and the delay line.
 8. The memory device of claim 7, wherein when t_(e)<t_(ck)/2, the reduced number of effective delay stages is achieved.
 9. The memory device of claim 7, wherein the number of effective delay stages is reduced by about one-half or greater.
 10. The memory device of claim 7, wherein the number of effective delay stages is equal to or less than about one-half of a clock period.
 11. A circuit for use with an external clock signal, comprising: an input buffer comprising an input connected to an external clock signal and an output connected to a clock input signal (CIN) for comparison with a clock feedback signal (CKFB), each signal comprising timing characteristics; and a phase detector comprising a pair of registers, the phase detector disposed between the input buffer and an output buffer, the registers comprising a first input to receive the CIN, and a second input to receive the CKFB, and the registers to generate one of four or more output signal combinations, each combination corresponding to a pre-defined phase of the signals based on the timing characteristics; the circuit comprising a delay line input, a selection multiplexor connected to the delay line input, a clock tree driver (CTD) to directly receive an output of the selection multiplexor, and a feedback loop to connect CKFB to the phase detector, and the circuit to selectively input a clock signal (CLK) or inverted clock signal (CLK′) as an input based on which of the four or more combinations is met to reduce a number of effective delay stages for at least one of the phases.
 12. The circuit of claim 11, wherein the timing characteristics define a period of CIN as t_(ck) and a period from a rising edge in CIN to a rising edge in CKFB as t_(e), and wherein when t_(e)>t_(ck)/2, CLK is input into the CTD, and when t_(e)<t_(ck)/2, CLK′ is input into the CTD.
 13. A delay-locked loop system, comprising: a delay-locked loop (DLL), comprising: a phase detector comprising a pair of registers, the registers to receive a clock input signal (CIN) and a clock feedback signal (CKFB), each signal comprising timing characteristics, and the registers to output a pair of branches each comprising a logical level, the logical levels of the branches define four or more conditions corresponding to pre-defined phases of the signals based on the timing characteristics, and at least one of the conditions reduces a number of effective delay stages of the DLL; a delay line, the delay line to receive the CIN and to output a clock signal (CLK) and inverted clock signal (CLK′) based on the four or more conditions; and a clock tree driver (CTD) configured to selectively receive one of the CLK or the CLK′ signals from the delay line directly via an input selection multiplexor based upon which of the four or more conditions is met, the input selection multiplexor interposed between the delay line and the clock tree driver (CTD); wherein the input selection multiplexor is interposed between the CTD and the delay line.
 14. A phase detection and selection circuit, comprising: a phase detector having a pair of registers, the registers to receive a clock input signal (CIN) and a clock feedback signal (CKFB), each signal comprising timing characteristics, and the registers to generate four or more output signal combinations, each combination corresponding to pre-defined phases of the signals based upon the timing characteristics; and logic associated with the phase detector to select one of the output signal combinations corresponding to the timing characteristics of the signals to selectively feed at least one of a clock signal (CLK) and an inverted clock signal (CLK′) provided at least indirectly by a delay line into a portion of the circuit directly via an input selection multiplexor based upon which of the four or more output signal combinations is generated, and a number of effective delay stages is reduced, wherein the input selection multiplexor is interposed between the CTD and the delay line. 